## Teach Yourself ActiveX in 21 Days

##
Dedication

This book is dedicated to my niece, Shaina Rene Kaufman, and to all the other kids who could use a mouse before they were old enough to turn a doorknob.

Sanders Kaufman

To mom.

Dina Fleet

##
Acknowledgments

First and foremost, I'd like to thank my mother, Judith Kaufman and my friend, Larry Kern—each of whom subsidized a significant part of the research for this book.

I'd like to thank Holly and Mark Rice for their help in creating some of the cooler animations and static graphics found in this book and on the enclosed CD-ROM. Holly's a real artist!

I'd also like to thank my baby brother, David, for his work catching my really stupid errors (like "Computer Object Model" instead of "Component Object Model").

I'd like to thank the editors and staff at Sams.net for their courteous comments and suggestions. It took me a couple of weeks to get the hang of the fact that they really don't use a hard-line formula in producing these books. Then again, you can attribute any errors herein directly to me!

Finally, I'd like to thank the developers at Microsoft for updating and publishing the ActiveX specifications three times during the three months I worked on this tome. By keeping us developers informed of the progress of ActiveX's development, the technology was released with the advice and consent of literally thousands of software and documentation authors.

Sanders Kaufman

I would like to thank my family, especially my wife Leslie. They suffer more than I do during the writing process. I would also like to thank Sharon Cox for the opportunity to write on this important technology.

Jeff Perkins

I would like to thank Sams.net for making this a possibility. I would like to thank Lorraine Schaffer, Sharon Cox, Kate Shoup, and Todd Bumbalough of Sams for their help.

I would also like to thank Wayne Berry for his support and guidance with this book.

Dina Fleet

##
About the Author

Sanders Kaufman is an Internet Consultant in Dallas, Texas. He got his start in computers when he was 11 years old. Sanders, his little brother David, and a group of their friends used to hike down to the local Radio Shack and program TRS-80 BASIC games and animation on the demo machines—the children themselves being an important part of the demonstration.

In 1988, Sanders focused on providing new and small businesses with management information and accounting systems tailored to their already installed PC systems.

In 1994, he teamed up with some of the Executive Officers of the Richardson, Texas Telecom Corridor companies to develop an Internet-Fax system. With a strong foundation in Bulletin Board Systems and experience as a BBS System Operator, Sanders dove headlong into the broad and expanding Internet/intranet technologies.

He now lives and works out of his two-bedroom apartment in Addison, Texas. It keeps him in close contact with his brother Ron, and mother, Judith—to whom he owes more than just his life.

Jeff Perkins is a Senior Software Engineer with TYBRIN Corporation, and a co-author of Teach Yourself SQL in 14 Days. A graduate of the United States Air Force Academy, he is a veteran with over 2,500 hours of flying time as Navigator and Bombardier in the B-52. He has also been a programmer, team leader, and program manager.

Dina Fleet holds a bachelor's degree in Computer Science from Principia College, Elsah, Illinois. Her background includes hardware and network consulting, software development, network and database engineering, Web development, and quality control. She is originally from Midland, Texas, and now works for Microsoft in Redmond, WA for the OLE DB team.

Dina can be contacted at dinaf@microsoft.com.

##
Introduction

When I was first asked to do this book, a lot of folks on the team thought ActiveX was some kind of programming language like C++, HTML or JavaStuff. In fact, it's all of them and none of them. ActiveX is a technology—a way of using a computer's environment to communicate over the Web efficiently and reliably. HTML, C++ Visual Basic, DirectX, and many other tools can be used to take advantage of ActiveX technologies.

"Why would I want to use ActiveX?" is the question I hear the most. I've got all kinds of answers—a different one for each individual.

"To have a professional Web presence."

"So people won't have to be techies to use your site."

"So everyone's machine can work with your pages."

The $40 answer is that it allows you to use OLE over the Web. This means that you can use your Web browser as a front end for your word processor, spreadsheet, database, chat, news, mail, and other applications. With ActiveX, you don't need to have 10 zillion applications installed on your machine. Moreover, you don't need to know how to use 10 zillion applications. When the Web browser tries to load an ActiveX document and you don't have the software required to load it, your Web browser will contact the software distributor over the Net, grab the stuff you need, and install it onto your local machine. If you never use that software again, it will be automatically deleted, freeing up valuable system resources for other uses.

After browsing some of the book titles available for computer programming, I found very few like this one. That is because ActiveX is a unique concept in programming. It addresses the issues of networking by relying on standards that have been cussed and discussed by the many standards organizations out there. Microsoft has said that it will release the ActiveX technologies to an independent standards body for continued maintenance, but in fact, most of it is already in public hands.